﻿<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <AssemblyName>SemanticKernel.Connectors.UnitTests</AssemblyName>
    <RootNamespace>SemanticKernel.Connectors.UnitTests</RootNamespace>
    <TargetFramework>net8.0</TargetFramework>
    <IsTestProject>true</IsTestProject>
    <Nullable>enable</Nullable>
    <ImplicitUsings>disable</ImplicitUsings>
    <IsPackable>false</IsPackable>
    <NoWarn>$(NoWarn);CA2007,CA1806,CA1869,CA1861,IDE0300,VSTHRD111,SKEXP0001,SKEXP0010,SKEXP0020,SKEXP0050</NoWarn>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.NET.Test.Sdk"/>
    <PackageReference Include="Moq"/>
    <PackageReference Include="xunit"/>
    <PackageReference Include="xunit.runner.visualstudio">
      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
      <PrivateAssets>all</PrivateAssets>
    </PackageReference>
    <PackageReference Include="coverlet.collector">
      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
      <PrivateAssets>all</PrivateAssets>
    </PackageReference>
    <PackageReference Include="System.Numerics.Tensors" />
    <PackageReference Include="System.Text.Json" />
    <PackageReference Include="Microsoft.Extensions.DependencyInjection" />
  </ItemGroup>

  <ItemGroup>
    <Compile Include="$(RepoRoot)/dotnet/src/InternalUtilities/test/AssertExtensions.cs"
             Link="%(RecursiveDir)%(Filename)%(Extension)"/>
    <Compile Include="$(RepoRoot)/dotnet/src/InternalUtilities/test/HttpMessageHandlerStub.cs"
             Link="%(RecursiveDir)%(Filename)%(Extension)"/>
  </ItemGroup>

  <ItemGroup>
    <ProjectReference Include="..\..\SemanticKernel.Core\SemanticKernel.Core.csproj"/>
    <ProjectReference Include="..\Connectors.HuggingFace\Connectors.HuggingFace.csproj"/>
    <ProjectReference Include="..\Connectors.OpenAI\Connectors.OpenAI.csproj"/>
    <ProjectReference Include="..\Connectors.Memory.AzureAISearch\Connectors.Memory.AzureAISearch.csproj"/>
    <ProjectReference Include="..\Connectors.Memory.Chroma\Connectors.Memory.Chroma.csproj"/>
    <ProjectReference Include="..\Connectors.Memory.Kusto\Connectors.Memory.Kusto.csproj"/>
    <ProjectReference Include="..\Connectors.Memory.Pinecone\Connectors.Memory.Pinecone.csproj"/>
    <ProjectReference Include="..\Connectors.Memory.DuckDB\Connectors.Memory.DuckDB.csproj"/>
    <ProjectReference Include="..\Connectors.Memory.Postgres\Connectors.Memory.Postgres.csproj"/>
    <ProjectReference Include="..\Connectors.Memory.Qdrant\Connectors.Memory.Qdrant.csproj"/>
    <ProjectReference Include="..\Connectors.Memory.Redis\Connectors.Memory.Redis.csproj"/>
    <ProjectReference Include="..\Connectors.Memory.Sqlite\Connectors.Memory.Sqlite.csproj"/>
    <ProjectReference Include="..\Connectors.Memory.Weaviate\Connectors.Memory.Weaviate.csproj"/>
    <ProjectReference Include="..\Connectors.Memory.MongoDB\Connectors.Memory.MongoDB.csproj"/>
    <ProjectReference Include="..\Connectors.Memory.AzureCosmosDBMongoDB\Connectors.Memory.AzureCosmosDBMongoDB.csproj"/>
  </ItemGroup>

  <ItemGroup>
    <None Update="OpenAI\TestData\*">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </None>
  </ItemGroup>

</Project>
